<DIV class="section" id="kr">
     <H1> Research Projects in Knowledge Representation and Reasoning </H1>
     <UL>
      <LI>
         <H3 id="modularity">
          Modularity for Modeling and Solving in Declarative Programming
         </H3>
          <P align="justify"> 
             Declarative programming serves as the computational paradigm in
             qualitative knowledge representation. However, while modularity has
             long been recognized as one of the key techniques  in software
             development, the research on modular declarative programming  
             formalisms is at an early stage. We are interested in advancing
             understanding of fundamental issues of declarative programming for
             modeling and reasoning with multi-logics, formalisms for modular and
             multi-context knowledge representation, and integrating 
             diverse languages and reasoning tools tailored for problems in large-scale 
             applications in modular knowledge representation settings are the 
             overarching objectives of our project.
          </P>
         <P>
          <A HREF="modularity.php">
           Project Home
          </A> |
          <A HREF="http://works.bepress.com/yuliya_lierler/subject_areas.html#Automated_Reasoning">
           Publications
          </A>
         </P>
      </LI>
      <LI>
       <H3 id="optimization">
        Automated Optimization in Declarative Constraint Programming
       </H3>
       <P align = "justify">
        Declarative programming tools developed in knowledge 
        representation and reasoning are successfully used in 
        numerous knowledge-intense scientific and industrial 
        applications. Nevertheless, computational knowledge 
        representation is far from realizing its full potential. 
        Even experts in declarative programming expend 
        substantial effort fine-tuning encodings and reasoning 
        tools before acceptable performance is obtained for the
        domain of interest. Principled performance evaluation and 
        code optimization have been proven essential to 
        imperative programming and software engineering. We are
        interested in exploring the means for automated 
        optimizations in the realm of computational knowledge 
        representation. One obstacle that we face is that there is 
        no clear basis to explain the relationship between a 
        declarative specification of a problem, its specific 
        instance, and the efficiency of available reasoning tools.
        Nevertheless, the advances in portfolio solving as well as
        automatic configuration fields suggest directions for 
        overcoming this obstacle. Applying automatic configuration
        tools in refining methodology of code optimization in 
        declarative programming is our first step towards an 
        ultimate goal of defining principal methods for automated
        optimization in declarative constraint programming.
       </P>
       <P>
        <A HREF="http://works.bepress.com/yuliya_lierler/subject_areas.html#Automated_Optimization_in_Declarative_Constraint_Programming">
         Publications
        </A>
       <P>
      </LI>
      <LI>
       <H3 id="asp">
        Answer Set Programming and Solving
       </H3>
       <P align = "justify">
        Answer Set Programming is a novel declarative constraint programming 
        paradigm inspired by ideas from knowledge representation, logic
        programming, and non-monotonic reasoning. It found its applications
        in many computationally intensive tasks including scheduling,
        planning, difficult search problems in bioinformatics and software
        verification that require elaboration tolerant solutions. Answer set
        solving technology extends computational methods of propositional
        satisfiability in the following way. As a declarative programming
        paradigm, it provides a rich, simple modeling language that, among
        other features, incorporates recursive definitions. Answer set
        programming languages use variables; software tools called grounders
        are used as front ends of answer set solvers to eliminate variables,
        whereas SAT-like procedures form their back-ends. Exploiting
        SAT-based techniques in creating novel solving procedures for answer 
        set programming as well as understanding the landscape of modern 
        answer set solving methods is one of the research questions that we 
        address. Answer set solvers 
        <A HREF="https://www.cs.utexas.edu/users/tag/cmodels/">Cmodels</A> 
        and <A HREF="https://www.cs.utexas.edu/users/tag/sup/">Sup</A> are 
        the in-house software systems.
       </P>
       <P>
        <A HREF="http://works.bepress.com/yuliya_lierler/subject_areas.html#Answer_Set_Programming_and_Solving">
         Publications
        </A> |
        <A HREF="https://www.cs.utexas.edu/users/tag/cmodels/">Cmodels</A> | 
        <A HREF="http://www.cs.utexas.edu/users/tag/sup/">Sup</A>
       <P>
      </LI>
      <LI>
       <H3 id="casp">
        Constraint Answer Set Programming
       </H3>
       <P align = "justify">
        Constraint Answer Set Programming is a novel, promising direction of
        research whose roots go back to propositional satisfiability.
        Satisfiability solvers are efficient tools for solving boolean constraint 
        satisfaction problems that arise in different areas of computer science,
        including software and hardware verification. Some constraints are more
        naturally expressed by non-boolean constructs. Satisfiability modulo
        theories extends boolean satisfiability by the integration of non-boolean
        symbols defined by a background theory in another formalism, such as a
        constraint processing language. Answer set programming extends
        computational methods of satisfiability in yet another way. Constraint
        Answer Set Programming draws on both of these extensions of SAT
        technology: it integrates Answer Set Programming with constraint
        processing. We are interested in establishing new computational methods,
        modeling language dialects for Constraint Answer Set Programming, and
        studying and comparing existing approaches.
       </P>
       <P>
        <A HREF="http://works.bepress.com/yuliya_lierler/subject_areas.html#Constraint_Answer_Set_Programming">
         Publications
        </A>
       <P>
      </LI>
     </UL>
</DIV>